package org.xxpay.core.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.xxpay.core.entity.UserLocale;

/**
 * 用户语言偏好服务接口
 * 
 * @author xxpay
 */
public interface IUserLocaleService extends IService<UserLocale> {

    /**
     * 获取用户语言偏好
     * 
     * @param userId 用户ID
     * @param userType 用户类型
     * @return 语言代码，如果未设置则返回默认语言
     */
    String getUserLocale(Long userId, Byte userType);

    /**
     * 设置用户语言偏好
     * 
     * @param userId 用户ID
     * @param userType 用户类型
     * @param locale 语言代码
     * @return 是否设置成功
     */
    boolean setUserLocale(Long userId, Byte userType, String locale);

    /**
     * 删除用户语言偏好
     * 
     * @param userId 用户ID
     * @param userType 用户类型
     * @return 是否删除成功
     */
    boolean removeUserLocale(Long userId, Byte userType);

    /**
     * 检查语言是否支持
     * 
     * @param locale 语言代码
     * @return 是否支持
     */
    boolean isSupportedLocale(String locale);
}
